﻿YUI.add('reportes-view', function (Y) {

    Y.ReportesView = Y.Base.create('ReportesView', Y.View, [], {
        render: function () {
            var template = '';
            var userInfo = amplify.store('userInfo');
            if (userInfo.Role === 'Administrador') {
                template = 'administradores';
            } else if (userInfo.Role === 'Docente') {
                template = 'docentes';
            } else if (userInfo.Role === 'Estudiante') {
                template = 'estudiantes';
            } else if (userInfo.Role === 'Representante') {
                template = 'representantes';
            }

            var that = this,
                    request = Y.io('/ExcellentProject/scripts/views/reportes/templates/' + template + '.html', {
                        on: {
                            complete: function (id, response) {

                                var template = response.responseText;

                                try {

                                    that.get('container').setHTML(template)
                                    Y.one('#nombrePerfil').set('innerHTML', userInfo.Role);

                                    if (userInfo.Role === 'Estudiante') {
                                        var estudiante = new Y.Estudiante();
                                        debugger
                                        var those = that, a = estudiante.load({ urlName: 'obtenerPorUsuario', usuario: amplify.store('userData').userName }, function () {
                                            amplify.store('datosEstudiante', estudiante.getAttrs())
                                            var nombreCompleto = estudiante.get('Nombre') + ' ' + estudiante.get('Apellido')
                                            Y.one('#nombreUsuario').set('innerHTML', nombreCompleto)
                                            Y.one('#userName').set('innerHTML', nombreCompleto);
                                        });
                                    }
                                    else if (userInfo.Role == 'Docente') {
                                        var docente = new Y.Docente();
                                        debugger
                                        var those = that, a = docente.load({ headers: amplify.store('authorization'), urlName: 'obtenerPorUsuario', usuario: amplify.store('userData').userName }, function () {
                                            amplify.store('datosDocente', docente.getAttrs());
                                            var nombreCompleto = docente.get('Nombre') + ' ' + docente.get('Apellido');
                                            Y.one('#nombreUsuario').set('innerHTML', nombreCompleto);
                                            Y.one('#userName').set('innerHTML', nombreCompleto);
                                        });

                                     }

                                    else if (userInfo.Role == 'Administrador') {
                                        var administrador = new Y.Persona();
                                        debugger
                                        var those = that, a = administrador.load({ headers: amplify.store('authorization'), urlName: 'obtenerPorUsuario', usuario: amplify.store('userData').userName }, function () {
                                            amplify.store('datosPersona', administrador.getAttrs());
                                            var nombreCompleto = administrador.get('Nombre') + ' ' + administrador.get('Apellido');
                                            Y.one('#nombreUsuario').set('innerHTML', nombreCompleto);
                                            Y.one('#userName').set('innerHTML', nombreCompleto);

                                        });
                                    }

                                } catch (err) {
                                    console.log(err)
                                }
                            },
                            failure: function (id, response) {
                                alert(response)
                            }
                        }
                    });
            return this;
        }
    });

}, '1.0.0.0', {
    requires: ['node', 'view', 'aui-scheduler', 'charts', 'estudiante-model', 'docente-model', 'node-event-simulate',
        'calendarizacion-model-list']
})